package cn.xopencode.userservice.rpc.matter;

import cn.xopencode.common.framework.vo.CommonResult;
import cn.xopencode.common.framework.vo.PageResult;
import cn.xopencode.userservice.rpc.matter.dto.CreateMatterDTO;
import cn.xopencode.userservice.rpc.matter.dto.MatterDTO;
import cn.xopencode.userservice.rpc.matter.dto.MatterPageDTO;
import cn.xopencode.userservice.rpc.matter.dto.UpdateMatterDTO;

import java.util.List;

/**
 * 年度重大事项说明 管理
 *
 * @Author xiaodawei
 * @since 2021/9/22
 */
public interface MatterRpc {

    /**
     * 获取年度重大事项说明信息
     *
     * @param matterId 年度重大事项说明编号
     * @return 年度重大事项说明
     */
    CommonResult<MatterDTO> getMatter(String matterId);


    /**
     * 新建年度重大事项说明
     *
     * @param createMatterDTO 部门信息
     * @return 年度重大事项说明编号
     */
    CommonResult<String> createMatter(CreateMatterDTO createMatterDTO);

    /**
     * 年度重大事项说明列表分页查询
     *
     * @param matterPageDTO 查询条件
     * @return 年度重大事项说明列表
     */
    CommonResult<PageResult<MatterDTO>> findMatterList(MatterPageDTO matterPageDTO);

    /**
     * 批量更新年度重大事项说明信息
     *
     * @param updateMatterDTOList 年度重大事项说明信息
     */
    CommonResult<Integer> updateMatter(List<UpdateMatterDTO> updateMatterDTOList);


}
